package com.blb.service;

import com.blb.entity.*;
import com.baomidou.mybatisplus.extension.service.IService;
import com.blb.utils.Response;
import org.apache.ibatis.annotations.Param;

import java.util.List;

/**
 * <p>
 *  服务类
 * </p>
 *
 * @author zyx
 * @since 2020-05-25
 */
public interface IStaffService extends IService<Staff> {
    //查询部门和id
    List<Dept> xiala(String companyId);

    //查询部门相对应的职位
    List<Post> postName(String id,String companyId);

    //员工添加
    Integer add(Staff staff);

    Response addAll(Staff staff,String status);

    /**
     * 用户表添加员工信息
     */
    Integer addUser(User user);

    //三表查询
    List<Staff> staffList(@Param("start")int start, @Param("length")int length, @Param("userName") String userName,  @Param("companyId")String companyId);

    Integer staffAll(String companyId);

    //修改传值
    Staff staffUpd(@Param("id")String id,@Param("companyId")String companyId);

    //查询所有身份
    List<StaffStatus> status(String companyId);

    //修改状态
    Integer updStatus(Staff staff);

    //修改员工所有
    void updStaffAll(String status,Staff staff);

    /**
     * 查询根据企业id员工信息
     * @param companyId
     * @return
     */
    List<Staff> selectStaffBycompanyId(String companyId);

    /**
     * 绑定员工角色
     * @param roleId
     * @param staffIds
     */
    void addStaffRole(String roleId,String[] staffIds);

    /**
     * 判断员工id是否重复
     */
    List<Staff> isStaffId(String staffId,String companyId);

    /**
     * 判断员工账号是否重复
     */
    List<Staff> isStaffName(String staffName);

    /**
     * 修改显示工资
     */
    List<Salary> salaryList(String salary);

}
